Skip to main content
Feedback

HL7 enhanced composites

Updated 

HL7 enhanced composites are a profile option for HL7 EDI profiles. When you turn them on, the profile changes how it handles composites, repeating elements, and escape characters. Use them when your HL7 messages must follow the HL7 standard more closely.

What changes in the tree

Without enhanced composites, an expanded composite element is replaced in the tree by its children. With enhanced composites on, the composite element stays in the tree, and its children appear underneath. This lets you set attributes, such as Mandatory and repeating, on the composite itself. It also lets you set a repeat element delimiter.

Every data element can be marked as repeating. This supports HL7 elements that can hold more than one value, such as the MSH.18 element in HL7 version 2.3.1.

The Data Elements tab also changes in three ways:

  • Icons are green when the segment can be expanded.
  • When you expand a segment, its data element list stays expanded.

Runtime requirement

Enhanced composites need a custom property on the runtime. Set com.boomi.container.useExtendedEDIParsing to true in Runtime Management, on the Custom tab of the Properties panel. The default is false. If the property is false, an HL7 profile with enhanced composites on is downgraded to legacy behavior. Legacy behavior affects the mandatory and repeating settings.

Escape handling

EDI standards usually use an escape character to embed a special character as literal data. The escape character tells the parser to treat the next character as data, not as a delimiter.

The Boomi EDI parser uses this prefix behavior in legacy HL7 profiles. When data is written to an HL7 element, each delimiter in the data is prefixed with the default HL7 escape character, \. In an EDI-to-EDI map that copies a non-expanded composite to another non-expanded composite, every delimiter in the composite is prefixed. That output changes data that you wanted to copy unchanged.

With enhanced composites on, and the runtime property set, the profile does not add escape characters when it maps a non-expanded composite to another. The HL7 specification does not use the escape character as a prefix. It uses its own encoding rules for special characters. For example, a field separator (usually |) becomes \F\. Enhanced composites support these encoding sequences.

The escape behavior depends on the profile's structure. If the incoming messages do not match the profile's structure, escaping can be applied where it does not belong. In that case, turn off escaping. [LINK: EDI profile's Options tab] When escaping is off, encoded sequences are not converted on read, and special characters are always treated as literals on write. You can turn escaping off for the whole profile, or for individual data elements.

Escape rules from the HL7 specification apply only to certain data types: ST (String), FT (Formatted Text), and TX (Text Data). This applies whether escaping is on or off.

On this Page